__author__ = 'East'

# 析构函数：在实例释放、销毁的时候执行的，通常用于做一些收尾工作，如关闭一些数据库链接，打开的临时文件
class Role(object):
    n = 123
    name = 'ssssssssssssssssss'
    def __init__(self, name, role, weapon, life_value=100, money=15000):
        # 构造函数
        # 在实例化时做一些类的初始化的工作
        self.name = name    # 实例变量（属性），作用域就是实例本身
        self.role = role
        self.weapon = weapon
        self.life_value = life_value
        self.money = money
    def __del__(self):
        print('%s 彻底死了...' % self.name)

    def shot(self):     # 类的方法，功能（动态属性）
        print("shooting...")

    def got_shot(self):
        print("ah...,I got shot...")

    def buy_gun(self, gun_name):
        print("%s just bought %s" % (self.name, gun_name))


r1 = Role('Alex', 'police', 'AK47')        # 生成一个角色，实例化（初始化一个类，造了一个对象）
r2 = Role('Jack', 'terrorist', 'B22')      # 生成一个角色
del r1
r2.got_shot()
r1.buy_gun('AK47')
r1.got_shot()